package com.ssy.lingxi.member.merchant.model.vo.lrc.response;

import com.ssy.lingxi.member.merchant.api.constant.MemberRightAcquireWayEnum;
import com.ssy.lingxi.member.merchant.api.constant.MemberRightParamWayEnum;
import com.ssy.lingxi.member.merchant.api.constant.MemberRightTypeEnum;

import java.io.Serializable;

/**
 * 基础会员权益查询返回结果VO
 * @author 万宁
 * @version 2.0.0
 * @date 2020-08-24
 */
public class BaseMemberRightQueryVO implements Serializable {
    private static final long serialVersionUID = -6369814777430698146L;

    public BaseMemberRightQueryVO() {
    }

    public BaseMemberRightQueryVO(Long rightId, Integer rightType, Integer acquireWay, Integer paramWay) {
        this.rightId = rightId;
        this.rightType = rightType;
        this.name = MemberRightTypeEnum.getCodeMsg(rightType);
        this.acquireWay = acquireWay;
        this.acquireWayName = MemberRightAcquireWayEnum.getCodeMsg(acquireWay);
        this.paramWay = paramWay;
        this.paramWayName = MemberRightParamWayEnum.getCodeMsg(paramWay);
        this.remark = MemberRightTypeEnum.getRemark(rightType);
    }

    /**
     * 权益Id
     */
    private Long rightId;

    /**
     * 权益类型枚举，1-价格权益，2-返现权益，3-积分权益
     */
    private Integer rightType;

    /**
     * 权益名称
     */
    private String name;

    /**
     * 获取方式枚举
     */
    private Integer acquireWay;

    /**
     * 获取方式名称
     */
    private String acquireWayName;

    /**
     * 参数设置方式枚举，1-按交易金额比例设置
     */
    private Integer paramWay;

    /**
     * 参数设置方式名称
     */
    private String paramWayName;

    /**
     * 权益说明
     */
    private String remark;

    public Long getRightId() {
        return rightId;
    }

    public void setRightId(Long rightId) {
        this.rightId = rightId;
    }

    public Integer getRightType() {
        return rightType;
    }

    public void setRightType(Integer rightType) {
        this.rightType = rightType;
    }

    public String getName() {
        return name;
    }

    public void setName(String name) {
        this.name = name;
    }

    public Integer getAcquireWay() {
        return acquireWay;
    }

    public void setAcquireWay(Integer acquireWay) {
        this.acquireWay = acquireWay;
    }

    public String getAcquireWayName() {
        return acquireWayName;
    }

    public void setAcquireWayName(String acquireWayName) {
        this.acquireWayName = acquireWayName;
    }

    public Integer getParamWay() {
        return paramWay;
    }

    public void setParamWay(Integer paramWay) {
        this.paramWay = paramWay;
    }

    public String getParamWayName() {
        return paramWayName;
    }

    public void setParamWayName(String paramWayName) {
        this.paramWayName = paramWayName;
    }

    public String getRemark() {
        return remark;
    }

    public void setRemark(String remark) {
        this.remark = remark;
    }
}
